10 CLEAR 200
20 CLEAR:MC=15360:N$=CHR$(128):CLS
30 PRINT@129,"TYPE IN YOUR NAME OR INITIALS";
31 PRINT@160,"(AT LEAST THREE LETTERS,PLEASE)";:PRINT@11,"blockout";:PRINT:PRINT@195,"PRESS ENTER AFTER EACH NAME"
40 PRINT@264,"NAME";:INPUT A$:IF A$="" THEN RUN
41 IF LEN(A$)<3 THEN A$=A$+"ZZ"
50 PRINT@328,"NAME";:INPUT B$:IF LEN(B$)<3 THEN B$=B$+"ZZ"
60 CLS:FOR X=1024 TO 1055:POKEMC+X,42:NEXT:PRINT@11,"blockout";
70 FOR X=1056 TO 1440 STEP 128:FOR Y=X TO X+30 STEP 6:POKEMC+Y,175:NEXT Y,X
80 Z=65:FOR X=1059 TO 1443 STEP 128:FOR Y=X TO X+24 STEP 6:POKEMC+Y,Z:Z=Z+1:NEXT Y,X
90 Z=85:FOR X=1120 TO 1150 STEP 6:POKEMC+X,Z:Z=Z+1:NEXT X
100 Z=48:FOR X=1248 TO 1376 STEP 128:FOR Y=X TO X+30 STEP 6:POKEMC+Y,Z:Z=Z+1:NEXT Y,X
110 FOR X=1055 TO 1535 STEP 32:POKEMC+X,128:NEXT X
120 FOR X=1470 TO 1503:POKEMC+X,128:NEXT X:GOSUB 160
130 P=RND(2):IF P=2 THEN 150
140 GOSUB 160:PRINT@488,"YOUR TURN, ";A$;:C$=A$:GOTO 170
150 GOSUB 160:PRINT@488,"YOUR TURN, ";B$;:C$=B$:GOTO 170
160 PP=0:FOR X=1504 TO 1534:POKEMC+X,175:NEXT X:RETURN
170 I$=INKEY$:IF I$="" THEN 170
180 SOUND 220,1:V=ASC(I$):IF V<48 OR V>90 THEN SOUND 100,5:GOTO 170
190 IF V>59 AND V<65 THEN SOUND 100,5:GOTO 170
200 GOSUB 470:IFF=1 THEN 220
210 GOSUB 500:IFF<>1 THENSOUND 100,5:GOTO 170
220 SOUND 200,1:IF C/2=INT(C/2) THEN  FOR X=C-32 TO C+32 STEP 32:POKEMC+X,159:NEXTX:GOTO 240
230 FOR X=C-2 TO C+2:POKEMC+X,159:NEXT X
240 FOR X=170 TO 230 STEP 15:SOUND X,1:NEXT X
250 IF C/2=INT(C/2) THEN GOSUB 310:GOTO 270
260 GOSUB 350:GOTO 270
270 IF A+B=15 THEN FOR X=10 TO 250 STEP 10:SOUND X,1:NEXT X:GOTO 410
280 IF PP=1 AND P=1 THEN 140
281 IF PP=1 AND P=2 THEN 150
290 P=P+1:IF P=3 THEN P=1
300 IF P=1 THEN 140
301 GOTO 150
310 IF PEEK(MC+C-6)=159 AND PEEK(MC+C-67)=159 AND PEEK(MC+C+61)=159 THEN 320
311 GOTO 330
320 G=C-37:GOSUB 530:G=C-4:GOSUB 540
330 IF PEEK(MC+C+6)=159 AND PEEK(MC+C-61)=159 AND PEEK(MC+C+67)=159 THEN 340
331 RETURN
340 G=C-31:GOSUB 530:G=C+2:GOSUB 540:RETURN
350 IF PEEK(MC+C-128)=159 AND PEEK(MC+C-67)=159 AND PEEK(MC+C-61)=159 THEN 360
351 GOTO 370
360 G=C-98:GOSUB 530:G=C-65:GOSUB 540
370 IF PEEK(MC+C+128)=159 AND PEEK(MC+C+61)=159 AND PEEK(MC+C+67)=159 THEN 380
371 RETURN
380 G=C+30:GOSUB 530:G=C+63:GOSUB 540:RETURN
390 IF P=1 THEN A=A+1:GOTO 400
391 B=B+1
400 FOR X=1 TO 5:FOR Y=180 TO 220 STEP 20:SOUND Y,1:NEXT Y,X:RETURN
410 CLS3:IF A>B THEN C$=A$:GOSUB 430:GOTO 450
420 C$=B$:GOSUB 430:GOTO 450
430 H$=C$+" "+"WINS!!!!!":J$="**"+C$+"**"
440 FOR X=1 TO 7:PRINT TAB(11);H$:PRINT TAB(9);J$:NEXT X:RETURN
450 PRINT@482,"TO PLAY AGAIN, PRESS ANY KEY";
460 IF INKEY$="" THEN 460
461 RUN
470 FOR D=1059 TO 1443 STEP 128:FOR E=D TO D+24 STEP 6
480 F=0:IF PEEK(MC+E)=V THEN C=E:D=1443:E=1467:F=1
490 NEXT E,D:RETURN
500 FOR D=1120 TO 1376 STEP 128:FOR E=D TO D+30 STEP 6
510 F=0:IF PEEK(MC+E)=V THEN C=E:F=1:RETURN
520 NEXT E,D:RETURN
530 FORX=GTOG+64STEP32:FORY=XTOX+4:POKEMC+Y,(159+(16*P)):SOUNDRND(255),1:NEXT:NEXT:RETURN
540 POKEMC+G,ASC(LEFT$(C$,1))-64:SOUND 212,1:POKEMC+G+1,ASC(MID$(C$,2,1))-64:SOUND 220,1
541 POKEMC+G+2,ASC(MID$(C$,3,1))-64:SOUND 230,1:GOSUB 390:PP=1:RETURN
